import Vue from 'vue'


import Cookies from 'js-cookie'//引入Cookies插件
import 'normalize.css/normalize.css'// Normalize.css是一种CSS reset的替代方案。

import App from './App.vue'
// import './registerServiceWorker'
import router from './router'
import store from './store'

//引入用于样式统一的 iconfont
import './assets/inonfont/iconfont.css'

// ElementUI
import ElementUI from 'element-ui';
// 更换主题
// import 'element-ui/lib/theme-chalk/index.css';
// import './assets/custom-theme/index.css'

import '@/styles/index.scss' // 设置全局css
import './icons' // icon
import './permission' // 路由守卫 permission control
import './utils/error-log' // error log
// echarts
import echarts from './utils/echartsUi';

// 国家化
import i18n from './i18n'

// vxe-table 兼容elementui
import 'font-awesome/scss/font-awesome.scss'
import 'xe-utils'


// import VXETable from 'vxe-table'
// // import 'vxe-table/lib/index.css'
// import VXETablePluginElement from 'vxe-table-plugin-element'
// import 'vxe-table-plugin-element/dist/style.css'
// // vxe-table 国际化
// VXETable.setup({
//   // 对组件内置的提示语进行国际化翻译
//   i18n: (key, args) => i18n.t(key, args),

//   // 可选，对参数中的列头、校验提示..等进行自动翻译（只对支持国际化的有效）
//   // translate: (key, args) => i18n.t(key, args)

// })
// // vxe-table 事件拦截
// VXETable.interceptor.add('event.clearActived', (params, event) => {
//   // 比如点击了某个组件的弹出层面板之后，此时被激活单元格不应该被自动关闭，通过返回 false 可以阻止默认的行为。
//   // console.log('event.target.className',event.target.className);
//   // console.log('event.target.params',params);
//   // if (event.target.className.indexOf('other-popper') > -1) {
//   //   return false
//   // }
// })
// // vxe-table使用element组件
// VXETable.use(VXETablePluginElement)
// Vue.use(VXETable);


// 引入table扩展插件
import "./plugins/common-table-extends.js";




import * as filters from './filters' // global filters vue全局过滤

// elementui 设置
Vue.use(ElementUI, {
  size: Cookies.get('size') || 'medium', // set element-ui default size
  i18n: (key, value) => i18n.t(key, value)  //国际化
})



// register global utility filters
Object.keys(filters).forEach(key => {
  Vue.filter(key, filters[key])
})

// 挂载echarts
Vue.prototype.$echarts = echarts

Vue.config.productionTip = false //阻止显示生产模式的消息

new Vue({
  router,
  store,
  i18n,
  render: h => h(App)
}).$mount('#app')
